package controller;

import model.Aggregation;
import model.Association;
import model.Attribute;
import model.ClassObj;
import model.DomainModel;
import model.Inheritance;

public class RemoveController {

	DomainModel domainModel;

	public RemoveController(DomainModel dm) {
		domainModel = dm;
	}

	public boolean removeClass(ClassObj classObj) {
		return domainModel.removeClass(classObj);
	}

	public boolean removeAttribute(Attribute attribute) {
		return domainModel.removeAttribute(attribute);
	}

	public void removeAssociation(Association association) {
		domainModel.removeAssociation(association);
	}

	public void removeAggregation(Aggregation aggregation) {
		domainModel.removeAggregation(aggregation);
	}

	public void removeInheritance(Inheritance inheritance) {
		domainModel.removeInheritance(inheritance);
	}

	public boolean updateClass(ClassObj classObj, String className) {
		return domainModel.updateClassName(classObj, className);
	}

	public boolean updateAttribute(Attribute attribute, String newName) {
		return domainModel.updateAttributeName(attribute, newName);
	}

	// have doubts need to discuss abt these updates
	/*
	 * public boolean updateAggregation(Association,String associationName){
	 * 
	 * }
	 * 
	 * public boolean updateAssociation(Association,String associationName){
	 * 
	 * }
	 * 
	 * public boolean updateInheritance(Association,String associationName){
	 * 
	 * }
	 */

}
